草庐IT

Java RMI tcp 连接内存问题

全部标签

javascript - 你能在 JavaScript 中捕获内存不足错误吗

我正在构建一个依赖缓存的移动网络应用程序。如果我的缓存使用了太多内存,我会在移动版Safari中看到这条消息..."Aproblemoccurredwiththiswebpagesoitwasreloaded".如果没有干预,页面将重新加载并重复做同样的事情几次,直到它放弃。是否有我可以捕获的事件、我可以监控的堆信息或我可以更改的设置以构建比强制页面重新加载更有弹性的缓存系统?Chrome有window.performace.memory但我似乎找不到任何与解决我在移动版Safari中的问题相关的内容。Try/catch语句和onBeforeUnload事件不会阻止页面加载或提供清除/

javascript - 使用非常大的背景位置偏移是否存在性能问题?

我正在构建一个进度条控件,我正在处理它实际上并不显示进度,而只是旋转指示器“正在发生某事”的情况。我的设计基本上是交替的斜条纹,本质上是一个像这样的理发杆,但是“旋转”:希望尽可能多地卸载渲染引擎,我想为此使用CSS转换。支持旧浏览器对我来说不是问题。所以,我的第一个想法基本上是这样做的:.barber-pole{background-image:url(repeating-slice.png);/*setaverylong(onehour!)transitiononthebackground-position*/transition:background-position3600sl

javascript - 关于jquery选择器如何遍历dom的一些问题

我怎么知道什么遍历了DOM而什么没有遍历?$('divp')这似乎返回了所有的div元素,然后对第一个div搜索中返回的每个dom元素上的P元素进行了另一次扫描。$('div.foo')类似乎不扫描dom。它们只过滤前面列表$('div')中包含类foo的元素。如果$('div')的子级具有foo类,则不会被选中。$('div,div')不包含欺骗。因此,它似乎只使用比较或不比较的lambda列表扫描一次。但是当你有像:contains('x')这样的过滤器时,这会变得非常困惑,它们似乎可以自己递归dom。那么这些选择器是如何工作的呢?'div.foo'是否首先只遍历div,然后对包含

javascript - 长轮询 XMLHttpRequests 和间歇性网络连接的问题

我已经实现了一个长轮询连接,允许我在前端使用TomcatWeb服务器和标准javascript进行服务器端推送(comet)。为了保持连接继续,我有一个简单的保持事件循环,它会在最后一个请求完成/失败后立即启动一个新请求。在绝大多数情况下,这种连接工作得非常好,并且如我所料地保持事件状态。但是,我注意到当用户的互联网连接断开时(例如,他们从VPN断开连接,拔掉他们的以太网,等等)并且我有一个待处理的XMLHttpRequest到服务器,我没有得到失败的迹象。正因为如此,连接悄无声息地消失了,除非我不断地向服务器发送请求来测试连接(这似乎违背了使用长轮询的目的),否则我无法知道它发生了。

javascript - Chrome 中奇怪的 javascript 内存

我在index.html中有以下内容:以及program.js中的以下内容:document.writeln(JSON.stringify(name));name="Bob";第一次打开index.html,是这样产生的(输出A):>""然后,在刷新页面后,产生了(输出B):>"Bob"我从未在Firefox中看到输出B。回到Chrome:但是,如果我使用“name”以外的一些变量,例如“val”:document.writeln(JSON.stringify(val));val="Bob";我得到一个异常(exception):UncaughtReferenceError:valis

JavaScript - 内存友好的脚本

在JavaScript中是否有类似内存友好脚本的东西?我应该知道的某些原则?我问这个是因为我有一个网站,其中#div填充了大量数据,我使用原始.innerHTML=i_hold_lots_of_data;我想知道code>.innerHTML='';与C中的free()具有相同的效果吗?所以我的问题可以缩小为:在内存管理方面,是否有处理JavaScript中大字符串的最佳实践? 最佳答案 如果您想深入了解您的内存配置文件,您应该使用GoogleChrome控制台(选项卡配置文件)等工具。它显示了哪些对象使用了多少内存。一般来说,您应

javascript - DOM执行顺序问题

我在HEAD标签中有一些JavaScript,它在页面上的最后一个脚本(当前已解析)之前动态插入异步加载脚本标签。这个动态包含的脚本标签包含需要在DOM可用之后解析DOM的JavaScript,但在加载所有图像和脚本标签之前。重要的是,JavaScript在所有JS加载之前开始执行,因为如果有一个挂起的脚本,这会导致糟糕的用户体验。这意味着我不能等待DOMContentLoaded事件触发。对于将动态包含脚本标记的第一段JavaScript放在哪里,我没有任何灵active。我的问题是,不等待DOMContentLoaded事件而立即开始解析DOM对我来说是否安全?如果没有,我是否有办

javascript - 如何使用 Lo-Dash 连接数组

由于我正在试用Lo-Dash,我想知道如何连接和排序两个数组?A1:[3,1]A2:[{1:'val1'},{2:'val2'},{3:'val3'},{4:'val4'},…]A1joinA2orderByVals:[{1:‘val1’},{3:‘val3’}]使用_.sortBy排序似乎很简单。但是如何执行连接呢? 最佳答案 我将不得不做出一些假设来回答您的问题。首先,像路易斯mentioned在评论中,A2不是有效的Javascript。因此,让我们按照Louis的建议,改用格式[{1:'val1'},...]。其次,A2中的

javascript - 是否可以修复第三方广告的内存泄漏?

我在使用GoogleDFP广告的Playlist.com上不断发生内存泄漏-打开标签页,它一直使用越来越多的内存(仅当启用广告时)。可在此处找到重现泄漏的示例测试页:http://dl.dropboxusercontent.com/u/6278910/ad-memory-leak.html.我们这边有什么办法可以帮助减少泄漏吗?显然,从经济上讲,关闭广告不是一个可行的解决方案。编辑:您可以在Chrome中打开开发者工具并尝试内存时间轴-每次加载广告时,它们都会占用更多内存。 最佳答案 这是可能的,尝试重新加载iframe以在删除它之

特定数字范围之间的 Javascript Math.floor 问题

在以下情况下,我遇到了javascript的Math.floor函数问题:1)从8192到10484之间的值,ifItype8192.8->TheMath.floorconvertsitinto8192.79ifItype8192.88->TheMath.floorconvertsitinto8192.87ifItype8192.3->TheMath.floorconvertsitinto8192.29奇怪的是,除了上面给出的范围之外,该函数工作正常。HTML:Javascript:varViewModel=function(){var_self=this;_self.userInpu